package cn.jyj.springframework.beans.factory;

import cn.jyj.springframework.beans.BeansException;
import cn.jyj.springframework.beans.factory.config.AutowireCapableBeanFactory;
import cn.jyj.springframework.beans.factory.config.BeanDefinition;
import cn.jyj.springframework.beans.factory.config.ConfigurableBeanFactory;

/**
 * ConfigurableListableBeanFactory，提供分析和修改Bean以及预先实例化的操作接口
 *
 * @Author 老顽固小可爱
 * @Date 2023/1/8 17:40
 * @Version 1.0
 */
public interface ConfigurableListableBeanFactory extends ListableBeanFactory, AutowireCapableBeanFactory, ConfigurableBeanFactory {

    abstract BeanDefinition getBeanDefinition(String beanName) throws BeansException;

    void preInstantiateSingletons() throws BeansException;

}
